<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script type="text/javascript">
        let arr1 = [1,3,5,7,9]
        let arr2 = [2,4,6,8,10]
        console.log(...arr1) // 展开一个数组
        let arr3 = [...arr1, ...arr2] // 连接数组
        console.log(arr3)

        function sum(a,b){
            return a+b
        }
        console.log(sum(1,2))

        function sum1(...numbers){
            console.log('@', numbers)
            // 返回求和
            return numbers.reduce((preValue, currentValue) => {
                return preValue + currentValue
            })
        }
        console.log(sum1(1,2,3,4))

        let person = {name: 'tom', age: 18}
        // console.log(...person);  // 报错, 展开运算符不能展开一个对象
        let person2 = {...person}   // 克隆后的一个对象
        person.name = 'jerry'
        console.log('克隆后的对象', person2)
        console.log('修改之前的数据', person)

        // 复制修改属性
        let person3 = {...person, name:'jack'}  // 克隆一个对象后,,对属性进行修改
        console.log(person3)

        // 合并属性
        let person4 = {...person, address:'wh'}  // 克隆一个对象后,,附加合并属性
        console.log(person4)
    </script>
</body>
</html>